import { Popover as AntdPopover, PopoverProps } from 'antd';

/**
 * 导出气泡卡片组件
 * @param {PopoverProps} props - 气泡卡片组件的属性
 * @param {React.ReactNode} props.children - 触发气泡卡片显示的元素
 * @param {React.ReactNode} props.content - 卡片内容
 * @param {React.ReactNode} props.title - 卡片标题
 * @param {'top' | 'left' | 'right' | 'bottom' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight' | 'leftTop' | 'leftBottom' | 'rightTop' | 'rightBottom'} props.placement - 气泡框位置
 * @param {'hover' | 'focus' | 'click' | 'contextMenu'} props.trigger - 触发行为
 * @param {boolean} props.open - 用于手动控制浮层显隐
 * @param {(open: boolean) => void} props.onOpenChange - 显示隐藏的回调
 * @param {boolean} props.arrow - 是否显示箭头
 * @param {boolean} props.autoAdjustOverflow - 气泡被遮挡时自动调整位置
 * @param {string} props.overlayClassName - 卡片类名
 * @param {React.CSSProperties} props.overlayStyle - 卡片样式
 * @param {number} props.mouseEnterDelay - 鼠标移入后延时多少才显示 Tooltip，单位：秒
 * @param {number} props.mouseLeaveDelay - 鼠标移出后延时多少才隐藏 Tooltip，单位：秒
 * @returns {JSX.Element} 气泡卡片组件的 JSX 元素
 * @description 气泡卡片组件是 Ant Design 提供的点击/鼠标移入元素，弹出气泡式的卡片浮层。
 * @example
 * <Popover content="Content" title="Title">
 *   <Button>Hover me</Button>
 * </Popover>
 * @example
 * <Popover
 *   content={<div>Content</div>}
 *   title="Title"
 *   trigger="click"
 * >
 *   <Button>Click me</Button>
 * </Popover>
 * @example
 * <Popover
 *   placement="topLeft"
 *   content="Content"
 *   title="Title"
 * >
 *   <Button>TL</Button>
 * </Popover>
 */
export const Popover = (props: PopoverProps) => {
  return <AntdPopover {...props} />;
};

// 默认导出
export default Popover;

// 重新导出类型
export type { PopoverProps };
